package com.xgk.boot.module.core.dal.entity.base;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.xgk.boot.framework.mybatis.core.dataobject.BaseDO;
import lombok.Data;


/**
 * <p>
 * 地址簿
 * </p>
 *
 * @author yfbao
 * @since 2025-06-14
 */
@Data
@TableName("address_book")
public class AddressBookDO extends BaseDO {

    @TableId(value = "ab_id", type = IdType.ASSIGN_ID)
    private Long abId;

    /**
     * 地址编码
     */
    @TableField(value = "address_code")
    private String addressCode;

    /**
     * 地址类型，0-商业地址 1-住宅地址 2-未知
     */
    @TableField(value = "address_type")
    private String addressType;

    /**
     * 名
     */
    @TableField(value = "ab_firstname")
    private String abFirstname;

    /**
     * 姓
     */
    @TableField(value = "ab_lastname")
    private String abLastname;

    /**
     * 公司
     */
    @TableField(value = "ab_company")
    private String abCompany;

    /**
     * 国家
     */
    @TableField(value = "ab_country")
    private String abCountry;

    /**
     * 邮编
     */
    @TableField(value = "ab_postcode")
    private String abPostcode;

    /**
     * 州/区域
     */
    @TableField(value = "ab_state")
    private String abState;

    /**
     * city
     */
    @TableField(value = "ab_city")
    private String abCity;

    /**
     * 地址1
     */
    @TableField(value = "ab_street_address1")
    private String abStreetAddress1;

    /**
     * 地址2
     */
    @TableField(value = "ab_street_address2")
    private String abStreetAddress2;

    /**
     * 门牌号
     */
    @TableField(value = "ab_doorplate")
    private String abDoorplate;

    /**
     * 电话
     */
    @TableField(value = "ab_phone")
    private String abPhone;

    /**
     * 地址验证结果
     */
    @TableField(value = "ab_result")
    private String abResult;

    @Override
    public String toString() {
        return "AddressBook{" +
        ", abId = " + abId +
        ", addressCode = " + addressCode +
        ", addressType = " + addressType +
        ", abFirstname = " + abFirstname +
        ", abLastname = " + abLastname +
        ", abCompany = " + abCompany +
        ", abCountry = " + abCountry +
        ", abPostcode = " + abPostcode +
        ", abState = " + abState +
        ", abCity = " + abCity +
        ", abStreetAddress1 = " + abStreetAddress1 +
        ", abStreetAddress2 = " + abStreetAddress2 +
        ", abDoorplate = " + abDoorplate +
        ", abPhone = " + abPhone +
        ", abResult = " + abResult +
        "}";
    }
}
